{% extends 'layout.html' %}

{% block content %}
	<div class="container">

		<div class="panel panel-default">
			<div class="panel-heading">表单</div>
			<div class="panel-body">

				{# 表单内容 #}
				<form id="formAdd">
					<div class="clearfix">
						{% for field in form %}
							<div class="col-xs-6">
								<div class="form-group" style="position: relative;margin-bottom: 15px">
									<label>{{ field.label }}
										<span class="error-msg" style="color: red;position: absolute"></span>
									</label>
									{{ field }}{# 输入框内容 #}

								</div>
							</div>
						{% endfor %}
					</div>
					<div class="col-xs-6">
						<button type="button" id='btnAdd' class="btn btn-primary">提 交</button>
					</div>
				</form>

			</div>
		</div>

		<div class="panel panel-default">
			<div class="panel-heading">
				<span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>{# 在部门列表前加图标 #}
				任务列表
			</div>
			<div class="panel-body">
				<table class="table table-bordered table-striped ">{# 带边宽,带条纹 #}
					<thead>
					<tr>
						<th>ID</th>
						<th>标题</th>
						<th>级别</th>
						<th>负责人</th>
						<th>操作</th>

					</tr>
					</thead>
					<tbody>
					{% for obj in queryset %}
						<tr>
							{#							循环取得列表内容#}
							<td>{{ obj.id }}</td>
							<td>{{ obj.title }}</td>
							<td>{{ obj.get_level_display }}</td>
							<td>{{ obj.user.username }}</td>
							<td>
								<a class="btn btn-primary btn-xs"
								   href="#">编辑</a>{# 蓝色primary #}{# 把id传到视图函数中 #}
								<a class="btn btn-danger btn-xs"
								   href="#">删除</a>{# 红色danger #}
							</td>

						</tr>
					{% endfor %}

					</tbody>
				</table>
			</div>
			{#分页#}
			<ul class="pagination" style="float: left">
				{{ page_string }}
			</ul>
		</div>


		{#故意把页面撑下来#}
		<div style="height: 1000px"></div>
		<hr/>
		<div>
			<h1>Ajax学习</h1>
			<h3>示例1</h3>
			<input id='btn1' type="button" class="btn btn-primary" value="点击1" onclick="clickMe();"/>

			<h3>示例2</h3>
			<input type="text" id="txtUser" placeholder="姓名">
			<input type="text" id="txtAge" placeholder="年龄">
			<input type="button" id="btn2" class="btn btn-primary" value="点击2"/>

			<h3>示例3</h3>
			<form id="form3">
				<input type="text" name="user" placeholder="姓名">
				<input type="text" name="age" placeholder="年龄">
				<input type="text" name="email" placeholder="邮箱">
				<input type="text" name="more" placeholder="介绍">
			</form>
			<input type="button" id="btn3" class="btn btn-primary" value="点击3"/>
		</div>
	</div>
{% endblock %}

{% block js %}
	<script type="text/javascript">
        $(function () {
            // 页面框架加载完成之后代码自动执行
            bindBtn1Event();

            bindBtn2Event();

            bindBtn3Event();

            bindBtnAddEvent();
        })

        function bindBtn1Event() {
            // 找到bnt1按钮,绑定一个事件
            $('#btn1').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    data: {
                        n1: 123,
                        n2: 456,
                    },
                    // 获取json对象
                    dataType: 'JSON',

                    success: function (res) {
                        console.log(res);
                        console.log(res.status);
                        console.log(res.data);
                    }
                })
            })
        }

        function bindBtn2Event() {
            // 找到bnt1按钮,绑定一个事件
            $('#btn2').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    data: {
                        //通过ajax把前端输入框内容提交到后台
                        name: $('#txtUser').val(),
                        age: $('#txtAge').val(),
                    },
                    // 获取json对象
                    dataType: 'JSON',

                    success: function (res) {
                        console.log(res);
                        console.log(res.status);
                        console.log(res.data);
                    }
                })
            })
        }

        function bindBtn3Event() {
            // 找到bnt1按钮,绑定一个事件
            $('#btn3').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    //通过ajax把前端输入框内容提交到后台
                    data: $('#form3').serialize(),//输出序列化表单值的结果：
                    //把表单中所有字段打包获取到

                    // 获取json对象
                    dataType: 'JSON',

                    success: function (res) {
                        console.log(res);
                        console.log(res.status);
                        console.log(res.data);
                    }
                })
            })
        }

        function bindBtnAddEvent() {
            // 找到bnt1按钮,绑定一个事件
            $('#btnAdd').click(function () {
                //点击时先清空错误信息
                $('.error-msg').empty();

                $.ajax({
                    url: '/task/add/',
                    type: 'post',
                    //通过ajax把前端输入框内容提交到后台
                    data: $('#formAdd').serialize(),//输出序列化表单值的结果：
                    //把表单中所有字段打包获取到

                    // 获取json对象
                    dataType: 'JSON',

                    success: function (res) {
                        if (res.status) {

                            {#跳出弹窗页面#}
                            {#alert('添加成功');#}

                            {#用JS实现页面的刷新#}
                            location.reload();

                        } else {
                            {#向后台取得error的值{字典},填到错误信息设定的地方#}
                            $.each(res.error, function (name, errorList) {
                                {#console.log(name,data);#}
                                $('#id_' + name).prev().find("span").text(errorList[0]);
                            })
                        }
                    }
                })
            })
        }

	</script>
{% endblock %}






















